Uitwisselprofiel IGJ Contextinformatie t.b.v. onaangekondigd inspectiebezoek

1.4.2. Wat is het aantal ingezette uren aan personeel in loondienst (PIL) en personeel niet-in-loondienst (PNIL) met een zorgverlener functie per kwalificatieniveau per Dag-, Avond- en Nacht-dienst (DAN-dienst)?

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: IGJ 1.4.2
2# Parameters: ?peildatum, ?vestiging
3# Ontologie: versie 3.0 of nieuwer
4
5PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
6PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
7PREFIX onz-pers: <http://purl.org/ozo/onz-pers#>
8PREFIX onz-g: <http://purl.org/ozo/onz-g#>
9PREFIX onz-org: <http://purl.org/ozo/onz-org#>
10
11SELECT
12	?kwalificatie_niveau
13    (SUM(?dag) AS ?Aantal_ingezette_uren_aan_PIL_met_een_zorgfunctie_in_de_dagdienst)
14    (SUM(?avond) AS ?Aantal_ingezette_uren_aan_PIL_met_een_zorgfunctie_in_de_avonddienst)
15    (SUM(?nacht) AS ?Aantal_ingezette_uren_aan_PIL_met_een_zorgfunctie_in_de_nachtdienst)
16{
17    # BIND("2023-09-15"^^xsd:date AS ?peildatum)
18    # BIND("000001254" AS ?vestiging)
19    BIND(?peildatum AS ?peildatum_argument)
20    
21    BIND(xsd:dateTime(?peildatum) AS ?peildatum_dt)
22    BIND(?peildatum_dt + "PT7H"^^xsd:duration AS ?peildatum_7)
23    BIND(?peildatum_dt + "PT16H"^^xsd:duration AS ?peildatum_16)
24    BIND(?peildatum_dt + "PT23H"^^xsd:duration AS ?peildatum_23)
25    
26    ?gewerkte_periode 
27        a onz-pers:GewerktePeriode ;
28        onz-g:hasBeginTimeStamp ?start_werk ;
29        onz-g:hasEndTimeStamp ?eind_werk ;
30        onz-g:hasParticipant ?werknemer ;
31        onz-g:hasPerdurantLocation ?werk_locatie ;
32        onz-g:hasQuality / onz-g:hasQualityValue / onz-g:hasDataValue ?gewerkte_uren ;
33        onz-g:definedBy ?overeenkomst .
34
35    FILTER(?peildatum_argument = xsd:date(?start_werk))
36
37    ?overeenkomst 
38        a onz-pers:ArbeidsOvereenkomst ;
39        onz-pers:heeftOpdrachtnemer ?medewerker ;
40        onz-g:hasPart ?overeenkomst_afspraak .
41    ?overeenkomst_afspraak
42        a onz-pers:WerkOvereenkomstAfspraak ;
43        onz-g:startDatum ?start_afspraak .
44    OPTIONAL {
45    ?overeenkomst_afspraak onz-g:eindDatum ?eind_afspraak
46    }
47    FILTER (?start_afspraak <= ?peildatum_argument && (?eind_afspraak >= ?peildatum_argument || !BOUND(?eind_afspraak)))
48    
49    # Bepaald het vestigingsnummer dat hoort bij de werkafspraak
50    ?overeenkomst_afspraak onz-g:isAbout ?locatie .
51    ?locatie 
52        a onz-g:StationaryArtifact ;
53        onz-g:partOf* ?vestiging_uri .
54    ?vestiging_uri 
55        a onz-org:Vestiging ;
56            onz-g:identifiedBy ?vestigingsnummer_object .
57    ?vestigingsnummer_object
58        a onz-org:Vestigingsnummer ;
59        onz-g:hasDataValue ?vestigingsnummer .
60    
61    # Bepaal het niveau van de functie
62    ?overeenkomst_afspraak onz-g:isAbout ?functie .
63    ?functie
64        a onz-g:OccupationalPositionRole ;
65        onz-g:hasQuality/onz-g:hasQualityValue ?kwalificatie .
66    ?kwalificatie a onz-pers:ODBKwalificatieWaarde .
67    { 
68        BIND("Totaal" AS ?kwalificatie_niveau)
69    } UNION {
70        ?kwalificatie rdfs:label ?kwalificatie_niveau
71    }
72    BIND(IF(?start_werk >= ?peildatum_7 && ?start_werk < ?peildatum_16, ?gewerkte_uren, 0) AS ?dag)
73    BIND(IF(?start_werk >= ?peildatum_16 && ?start_werk < ?peildatum_23, ?gewerkte_uren, 0) AS ?avond)
74    BIND(IF(?dag || ?avond, 0, ?gewerkte_uren) AS ?nacht)
75}
76GROUP BY ?kwalificatie_niveau
77ORDER BY ?kwalificatie_niveau

Heb je feedback?

Loopt u tegen een issue aan bij het KIK-V product? Neem dan contact met ons op!